﻿module Sustainalytics.EsgRatings.Admin {
    import AccessLevel = Sustainalytics.Accounts.Admin.AccessLevel;

    export enum TemplateTypeEnum {
        Type_A = 0,
        Type_B,
        Combined
    }

    export  enum CompanyTypeEnum {
        Public = 0,
        Private,
        Combined
    }

    export  enum ComparativeGroupEnum {
        PeerGroup = 1,
        IndustryGroup = 2
    }

    export enum ActiveTypeEnum {
        Active,
        NotActive,
        Suggested
    }

    export enum PredefinedTypeEnum {
        CompanyType = 0,
        Combined = 1
    }

    export class ESGProfileDto {       

        public id: string;
        public name: string;

        public accountId: string;
        public accountType: AccessLevel;
        public active: ActiveTypeEnum;

        public matrixId: string;
        public matrixName: string;

        public referenceUniverseId: string;
        public referenceUniverseName: string;
        
        public templateType: TemplateTypeEnum;
        public companyType: CompanyTypeEnum;

        //public templateType: PredefinedTypeEnum;
        //public companyType : PredefinedTypeEnum;

        public comparativeGroup: ComparativeGroupEnum;
    }

    export class ESGProfileOutDto {

        public listReferenceUniverses: IdNamePair[];
        public listMatrixes: IdNamePair[];
        public profiles: ESGProfileDto[];
    }
    
} 